/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Engine2D.network;

import java.net.InetAddress;

/**
 *
 * @param <E> 
 * @author Garys
 */
public interface Connection<E> {

    /**
     * 
     * @return
     */
    public boolean connect();

    /**
     * 
     * @return
     */
    public boolean disconnect();

    /**
     * 
     * @return
     */
    public boolean isConnected();

    /**
     * 
     * @return
     */
    public E getSocket();

    /**
     * 
     * @return
     */
    public InetAddress getLocalIP();

    /**
     * 
     * @return
     */
    public InetAddress getRemoteIP();

    /**
     * 
     * @return
     */
    public boolean isServer();
}
